<?php
// upload.php

// 检查是否有文件上传
if(isset($_FILES['image'])) {
    $errors = array();
    $file_name =$_FILES['image']['name'];
    $file_size =$_FILES['image']['size'];
    $file_tmp =$_FILES['image']['tmp_name'];
    $file_type =$_FILES['image']['type'];
    $file_ext = strtolower(end(explode('.',$_FILES['image']['name'])));

    // 允许的文件扩展名
    $allowed_extensions = array("jpeg", "jpg", "png");

    // 检查文件扩展名是否允许
    if(!in_array($file_ext,$allowed_extensions)) {
        $errors[] = "只能上传JPEG、JPG或PNG格式的图片。";
    }

    // 检查文件大小（这里限制为2MB）
    if($file_size > 20971520) {
        $errors[] = '文件大小不能超过20MB';
    }

    // 如果没有错误，则上传文件
    if(empty($errors)) {
        // 为避免文件名冲突，生成一个唯一的文件名
        $unique_file_name = uniqid() . '.' .$file_ext;
        $destination = "uploads/" .$unique_file_name;

        // 移动文件到上传目录
        if(move_uploaded_file($file_tmp,$destination)) {
            // 上传成功，可以在这里做进一步的处理，比如将文件信息保存到数据库
            header("Location: index.php");
            exit;
        } else {
            $errors[] = "上传文件时发生错误。";
        }
    }

    // 如果有错误，输出错误信息
    if(!empty($errors)) {
        print_r($errors);
    }
}
?>
